var filaSeleccionada = -1;
var divPaginacion="#pagerOrdenes";
var ordenesArrayJSON = [];
var anchoTabla = 900;

var divGrilla = "";
function fnInicializarTabla(idDivGrilla){
	divGrilla = idDivGrilla;
    $(divGrilla).jqGrid({
        datatype: 'local',
        data:ordenesArrayJSON,
        mtype: 'GET',
        width:anchoTabla,
        height:400,
        hidegrid:false,
        colNames:['#','Nro. Orden','Tipo Comp.','Nro. Comp.','Fecha Servicio', 'Cliente','RUC / DNI','Nro. Placa','Marca','Modelo','Color','Subtotal (s/.)','IGV (s/.)','Total (s/.)','#','Estado'],
        colModel :[
          {name:'id', index:'id',hidden:true},    
          {name:'nroOrden',index:'nroOrden',width:90,align:'center',sortable:true,search:true}, 
          {name:'tipoComprobante',index:'tipoComprobante',width:80,align:'center',sortable:true,search:true}, 
          {name:'nroComprobante',index:'nroComprobante',width:80,align:'center',sortable:true,search:true}, 
          {name:'fechaServicio', index:'fechaServicio',width:190,align:'center',sortable:true,search:true},
          {name:'nombreCliente', index:'nombreCliente',width:230,align:'center',sortable:true},
          {name:'rucDni', index:'rucDni',width:110,align:'center',sortable:true},
          {name:'numeroPlaca', index:'numeroPlaca',width:100,align:'center',sortable:true},
          {name:'marcaVehiculo', index:'marcaVehiculo',width:110,align:'center',sortable:true},
          {name:'modelo', index:'modelo',width:110,align:'center',sortable:true},
          {name:'color', index:'color',width:120,align:'center',sortable:false},
          {name:'precioServicio',index:'precioServicio',width:120,align:'center',sortable:false},
          {name:'igvServicio',index:'igvServicio',width:120,align:'center',sortable:false},
          {name:'totalServicio',index:'totalServicio',width:120,align:'center',sortable:false},
          {name:'anulado',index:'anulado',hidden:true},
          {name:'estado',index:'estado',width:100,align:'center',sortable:true}
        ],
        pager: divPaginacion,
        rowNum:20,
        rowList:[10,20,30],
        sortname: 'nroOrden',
        sortorder: 'asc',
        viewrecords: true,
        rownumbers:true,
        caption: 'Lista de Ordenes de Trabajo'
    });

    $(divGrilla).jqGrid('navGrid',divPaginacion,{search:false,edit:false,add:false,del:false,searchtext:"B&uacute;squeda"});

    $(divGrilla).jqGrid('setGridParam',
        { onSelectRow: function(id){ 
    		filaSeleccionada = id;
    	} 
    } 
    );
}

function fnCargarVehiculosPorCliente(){
	var idCliente = $("#idCliente").val();
	
	var selectorVehiculos = $("#idVehiculo");
	var strOpciones = "";
	if(idCliente == ""){
		
		var objOpciones = $(selectorVehiculos).find("option");
		$(objOpciones).remove();
		$(selectorVehiculos).append("<option value=''>[Ninguno]</option>");
	}else{
		
		fnCargarVehiculosPorClienteJSON(idCliente,
			function(){
				var i = 0;
				var dim = ARRAY_JSON_VEHICULOS.length;
				
				var strOpciones = "";

				var idVehiculoBuscado = $("#idVehiculoBuscado").val();
				if(dim > 0){
	
					strOpciones = "<option value=''>[Seleccione]</option>";
					
					while(i<dim){
						var objJSON = ARRAY_JSON_VEHICULOS[i];
						strOpciones = strOpciones + "<option value='"+objJSON["idVehiculo"]+"'>"+objJSON["numeroPlaca"]+" - "+objJSON["marcaVehiculo"]+"</option>";
						i = i + 1;
					}
				}else{
					strOpciones = "<option value=''>[Ninguno]</option>";
				}
				
				var objOpciones = $(selectorVehiculos).find("option");
				$(objOpciones).remove();
				$(selectorVehiculos).append(strOpciones);
				
				if(idVehiculoBuscado!=""){
					$(selectorVehiculos).val(idVehiculoBuscado);
					$("#idVehiculoBuscado").val("");
				}
			}
		);
	}	
}

function fnNuevaOrden(){
	location.href= contextPath + "/OrdenesTrabajo/nueva_orden";
}

function fnEditarOrden(){
	if(filaSeleccionada!=-1){
		
		var rowData = $(divGrilla).getRowData(filaSeleccionada);
		var anulado = rowData["anulado"];
		
		if(anulado == "S"){
			jAlert('La orden seleccionada ya est\u00e1 anulada',TITULO_MENSAJE);
		}else{
			location.href= contextPath + "/OrdenesTrabajo/editar_orden?idOrden="+filaSeleccionada;
		}
		
	}else{
		jAlert('Seleccione una orden para editar',TITULO_MENSAJE);
	}		
}

function fnVerificarOrden(){
	if(filaSeleccionada!=-1){
		location.href= contextPath + "/OrdenesTrabajo/verificar_orden?idOrden="+filaSeleccionada;
	}else{
		jAlert('Seleccione una orden para editar',TITULO_MENSAJE);
	}		
}

function fnAnularOrden(){
	if(filaSeleccionada!=-1){
		
		var rowData = $(divGrilla).getRowData(filaSeleccionada);
		var anulado = rowData["anulado"];
		
		if(anulado == "S"){
			jAlert('La orden seleccionada ya est\u00e1 anulada',TITULO_MENSAJE);
		}else{
			location.href= contextPath + "/OrdenesTrabajo/anular_orden?idOrden="+filaSeleccionada;
		}
		
	}else{
		jAlert('Seleccione una orden para anular',TITULO_MENSAJE);
	}		
}

function fnBuscar(){
	$("#formBusqueda").submit();
}

function fnImprimir(){
	var i = 0;
	var dim = ordenesArrayJSON.length;
	
	var htmlImpresion = '<html><head><meta name="robots" content="noindex,nofollow" />'+
						'<link rel="shortcut icon" href="'+contextPath+'/favicon.ico" type="image/x-icon" />'+
					    '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'+
						'<link href="'+contextPath+'/css/impresion.css" type="text/css" rel="stylesheet" />'+
						'<title>Impresion_Ordenes</title></head><body><div align="center"><div class="tituloImpresion">Consulta de &Oacute;rdenes de Trabajo</div><br /><br />'+
						'<table border="0" width="1050" cellpadding="0" cellspacing="0">';
	var cabecera = '<tr><td class="celdaCabecera" align="center">#</td>'+
					   '<td class="celdaCabecera" align="center">Nro. Orden</td>'+
					   '<td class="celdaCabecera" align="center">Tipo<br/>Comprobante</td>'+
					   '<td class="celdaCabecera" align="center">Nro.<br/>Comprobante</td>'+
					   '<td class="celdaCabecera" align="center">Fecha Servicio</td>'+
					   '<td class="celdaCabecera" align="center">Cliente</td>'+
					   '<td class="celdaCabecera" align="center">RUC / DNI</td>'+
					   '<td class="celdaCabecera" align="center">Nro. Placa</td>'+
					   '<td class="celdaCabecera" align="center">Marca</td>'+
					   '<td class="celdaCabecera" align="center">Modelo</td>'+
					   '<td class="celdaCabecera" align="center">Color</td>'+
					   '<td class="celdaCabecera" align="center">Subtotal (s/.)</td>'+
					   '<td class="celdaCabecera" align="center">IGV (s/.)</td>'+
					   '<td class="celdaCabecera" align="center">Total (s/.)</td>'+
					   '<td class="celdaCabecera celdaFinal" align="center">Estado</td>'+
					'</tr>';
	
	htmlImpresion = htmlImpresion + cabecera;
	while(i<dim){
		var objJSON = ordenesArrayJSON[i];
		
		var fila = '<tr><td class="celdaImpresion">'+(i+1)+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["nroOrden"]!=null)?objJSON["nroOrden"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["tipoComprobante"]!=null)?objJSON["tipoComprobante"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["nroComprobante"]!=null)?objJSON["nroComprobante"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["fechaServicio"]!=null)?objJSON["fechaServicio"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["nombreCliente"]!=null)?objJSON["nombreCliente"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["rucDni"]!=null)?objJSON["rucDni"]:"")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["numeroPlaca"]!=null)?objJSON["numeroPlaca"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["marcaVehiculo"]!=null)?objJSON["marcaVehiculo"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["modelo"]!=null)?objJSON["modelo"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["color"]!=null)?objJSON["color"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["precioServicio"]!=null)?objJSON["precioServicio"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["igvServicio"]!=null)?objJSON["igvServicio"]:"-")+'</td>'+
					   '<td class="celdaImpresion">'+((objJSON["totalServicio"]!=null)?objJSON["totalServicio"]:"-")+'</td>'+
					   '<td class="celdaImpresion celdaFinal">'+((objJSON["estado"]!=null)?objJSON["estado"]:"-")+'</td>'+
				   '</tr>';

		htmlImpresion = htmlImpresion + fila;
		i = i + 1;
	}
	
	htmlImpresion = htmlImpresion + "</table></div></body></html>";
	
	var ventimp = window.open('','popimpr');
	ventimp.document.write(htmlImpresion);
	ventimp.document.close();

	if (ventimp.print()){ 
		ventimp.close(); 
	}else{ 
		ventimp.close(); 
	} 

}